colorswatch: Render focus with gtk_render_focus()
authorBenjamin Otte <otte@redhat.com>
Tue, 7 Oct 2014 14:52:42 +0000 (16:52 +0200)
committerBenjamin Otte <otte@redhat.com>
Wed, 8 Oct 2014 03:20:30 +0000 (05:20 +0200)
gtk/gtkcolorswatch.c
gtk/resources/theme/Adwaita/_common.scss
gtk/resources/theme/Adwaita/gtk-contained-dark.css
gtk/resources/theme/Adwaita/gtk-contained.css

index 77846a62e9537e9af4d09d65d6916219e6d45437..690de3af036e85a402ab2b7f92f7b7519c4cdd7c 100644 (file)
@@ -171,18 +171,6 @@ swatch_draw (GtkWidget *widget,
 
   gtk_render_frame (context, cr, 0, 0, width, height);
 
-  if (gtk_widget_has_visible_focus (widget))
-    {
-      cairo_set_line_width (cr, 2);
-      if (swatch->priv->has_color && INTENSITY (swatch->priv->color.red, swatch->priv->color.green, swatch->priv->color.blue) < 0.5)
-        cairo_set_source_rgba (cr, 1., 1., 1., 0.4);
-      else
-        cairo_set_source_rgba (cr, 0., 0., 0., 0.4);
-        _gtk_rounded_box_shrink (&background.padding_box, 3, 3, 3, 3);
-        _gtk_rounded_box_path (&background.padding_box, cr);
-        cairo_stroke (cr);
-    }
-
   if (swatch->priv->icon)
     {
       icon_info = gtk_icon_theme_lookup_icon (theme, swatch->priv->icon, PIXBUF_SIZE,
@@ -240,6 +228,11 @@ swatch_draw (GtkWidget *widget,
   cairo_restore (cr);
   gtk_style_context_restore (context);
 
+  if (gtk_widget_has_visible_focus (widget))
+    {
+      gtk_render_focus (context, cr, 0, 0, width, height);
+    }
+
   return FALSE;
 }
 
index b010bce8aedfbd319528f047b3650476ab8c6b63..1ae19009f6b520b56ba280076030b665d7712d09 100644 (file)
@@ -2786,6 +2786,7 @@ GtkColorSwatch {
   }
 
   &.color-light {
+    outline-color: transparentize(black,0.7);
     &:hover {
       background-image: linear-gradient(to bottom,
                                         transparentize(white, 1) 40%,
@@ -2794,6 +2795,7 @@ GtkColorSwatch {
     }
   }
   &.color-dark {
+    outline-color: transparentize(white,0.5);
     &:hover {
        background-image: linear-gradient(to bottom,
                                         transparentize(white, 1) 40%,
index 6dee2346346ea7f0a5166c7e6181bca234492a63..19f217675bb3c661884c0fad1fff8ee7e569bfad 100644 (file)
@@ -4161,14 +4161,18 @@ GtkColorSwatch {
   border: 1px solid;
   border-color: #1c1f1f;
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.4); }
-  GtkColorSwatch.color-light:hover {
-    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.4)); }
-    GtkColorSwatch.color-light:hover:backdrop {
-      background-image: none; }
-  GtkColorSwatch.color-dark:hover {
-    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2)); }
-    GtkColorSwatch.color-dark:hover:backdrop {
-      background-image: none; }
+  GtkColorSwatch.color-light {
+    outline-color: rgba(0, 0, 0, 0.3); }
+    GtkColorSwatch.color-light:hover {
+      background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.4)); }
+      GtkColorSwatch.color-light:hover:backdrop {
+        background-image: none; }
+  GtkColorSwatch.color-dark {
+    outline-color: rgba(255, 255, 255, 0.5); }
+    GtkColorSwatch.color-dark:hover {
+      background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2)); }
+      GtkColorSwatch.color-dark:hover:backdrop {
+        background-image: none; }
   GtkColorSwatch:hover {
     border-color: #1e2222; }
   GtkColorSwatch:backdrop {
index 81eed0e3a5f681f6b76638859e840a4ecaf5d7ab..318c463daa5a7c4a7ef0fd30fdcd81379a5edb47 100644 (file)
@@ -4322,14 +4322,18 @@ GtkColorSwatch {
   border: 1px solid;
   border-color: rgba(0, 0, 0, 0.3);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2); }
-  GtkColorSwatch.color-light:hover {
-    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.4)); }
-    GtkColorSwatch.color-light:hover:backdrop {
-      background-image: none; }
-  GtkColorSwatch.color-dark:hover {
-    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2)); }
-    GtkColorSwatch.color-dark:hover:backdrop {
-      background-image: none; }
+  GtkColorSwatch.color-light {
+    outline-color: rgba(0, 0, 0, 0.3); }
+    GtkColorSwatch.color-light:hover {
+      background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.4)); }
+      GtkColorSwatch.color-light:hover:backdrop {
+        background-image: none; }
+  GtkColorSwatch.color-dark {
+    outline-color: rgba(255, 255, 255, 0.5); }
+    GtkColorSwatch.color-dark:hover {
+      background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2)); }
+      GtkColorSwatch.color-dark:hover:backdrop {
+        background-image: none; }
   GtkColorSwatch:hover {
     border-color: rgba(0, 0, 0, 0.5); }
   GtkColorSwatch:backdrop {